//
//  BCHttpManager.h
//  BCShop
//
//  Created by sheweicai on 15/6/1.
//  Copyright (c) 2015年 美丽点击. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "BCNetAPIClient.h"
@interface BCHttpManager : NSObject

+ (instancetype)sharedManager;

//Login
- (void)request_Login_WithParams:(id)params andBlock:(void (^)(id data, NSError *error))block;

#pragma mark - 预览模块
/**
 *  返回分类结果集
 *
 *  @param categoryId 分类id 一级分类id为 -1 ,二级分类id为父级分类的id
 *  @param complete   回调结果
 */
- (void)request_GetCategoryListWithId:(NSString *)categoryId complete:(void(^)(id data, NSError *error))complete;

/**

 *  @param iDisplayStart  开始下标
 *  @param iDisplayLength 取数据长度 
 *  @param complete       回调结果
 */
- (void)request_GetRecommendBrands:(NSString *)brandType iDisplayStart:(NSString *)iDisplayStart iDisplayLength:(NSString *)iDisplayLength complete:(void(^)(id data, NSError *error))complete;

/**
 
 */
- (void)request_GetDiscountProductWithStatus:(NSString *)status iDisplayStart:(NSString *)iDisplayStart iDisplayLength:(NSString *)iDisplayLength complete:(void(^)(id data, NSError *error))complete;

/**

 */
- (void)request_GetNewProductWithiDisplayStart:(NSString *)iDisplayStart iDisplayLength:(NSString *)iDisplayLength complete:(void(^)(id data, NSError *error))complete;

/**
 *  获取二级分类

 */
- (void)request_queryAllProductListWithParams:(id)params andBlock:(void(^)(id data,NSError *error))block;

/**

 */
-(void)request_queryProductInfoWithProductId:(id)productId complete:(void (^)(id, NSError *))complete;
/**
 
 */
-(void)request_queryProductDiscussionListWithProductId:(id)productId storeId:(id)storeId iDisplayStart:(NSString *)iDisplayStart iDisplayLength:(int)iDisplayLength complete:(void (^)(id, NSError *))complete;
/**

 */
-(void)request_shoppingCartListWithProductIds:(NSString *)productIds complete:(void (^)(id, NSError *))complete;

/**

 */
-(void)request_findAddressList:(NSString *)memberId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;
/**

 *
 *  @param memberId 用户Id

 *  @param province 省份
 *  @param city 城市
 *  @param area 地区

 *  @param mobile 用户手机号
 *  @param block  返回
 */
-(void)request_saveAddress:(NSString *)memberId consignee:(NSString *)consignee province:(NSString *)province city:(NSString *)city area:(NSString *)area addressDetail:(NSString *)addressDetail mobile:(NSString *)mobile complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;
/**

 */
-(void)request_removeAddress:(NSString *)addressId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;
/**


 */
-(void)request_setDefaultUserAddress:(NSString *)addressId memberId:(NSString *)memberId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;
/**

 */
-(void)request_getUserDefaultAddress:(NSString *)memberId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)errorBlock;


/**

 *

 */
-(void)request_queryOrderListByStatus:(NSNumber *)status memberId:(NSString *)memberId pageNo:(NSInteger)pageNo pageSize:(NSInteger)pageSize complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;

/**


 */
-(void)request_SaveOrder:(NSString *)memberId addressId:(NSString *)addressId discountAmount:(CGFloat)discountAmount productList:(NSArray *)productList complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;

/**


 */
-(void)request_DeleteOrder:(NSString *)ordereId orderStatus:(NSNumber *)orderStatus complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;

/**

 *
 */
-(void)request_get_Order_Detail:(NSString *)ordereId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)errorBlock;

/**

 */
-(void)request_getMyBalance:(NSString *)memberId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;



/**

 */
-(void)request_Create_New_Order_Pay:(NSString *)orderId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;

/**

 */
-(void)request_searchOrderListByorderId:(NSString *)orderId memberId:(NSString *)memberId pageNo:(NSInteger)pageNo pageSize:(NSInteger)pageSize complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;

/**

 */
-(void)request_ConfirmOrder:(NSString *)orderId complete:(RequestCompleteBlock)complete error:(RequestErrorBlock)error;


-(void)request_queryOrderListByStatus:(NSNumber *)status memberId:(NSString *)memberId pageNo:(NSInteger)pageNo pageSize:(NSInteger)pageSize complete:(void (^)(id, NSError *))complete;
@end
